/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package com.kallsonys.business;
import com.kallsonys.dao.AddressDao;
import com.kallsonys.dao.CityDao;
import com.kallsonys.dao.CountryDao;
import com.kallsonys.dao.CreditCardDao;
import com.kallsonys.dao.CustomerDao;
import com.kallsonys.dao.OrderDao;
import com.kallsonys.dao.OrderItemDao;
import com.kallsonys.dao.OrderQuoteDao;
import com.kallsonys.dao.ShippingCompanyDao;
import com.kallsonys.dao.StateDao;
import com.kallsonys.dao.SupplierDao;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.sql.DataSource;
import oracle.jdbc.OracleTypes;

/**
 *
 * @author allan
 */
public class KallSonysFacade 
{
    /**
     * DataSource Compartido
     */
    private DataSource sharedDs;

    /**
     * SharedDs
     * @return
     */
    public DataSource getSharedDs() {
        return sharedDs;
    }
    

    /**
     * Constructor de la Clase
     * @param ds
     */
    public KallSonysFacade(DataSource ds) {
        this.sharedDs = ds;
    }
    
    public AddressDao addressDao() { return new AddressDao(this);  }
    public CityDao cityDao() { return new CityDao(this);  }
    public CountryDao countryDao() { return new CountryDao(this);  }
    public CreditCardDao creditCardDao() { return new CreditCardDao(this);  }
    public CustomerDao customerDao() { return new CustomerDao(this);  }
    public OrderDao orderDao() { return new OrderDao(this);  }
    public OrderItemDao orderItemDao() { return new OrderItemDao(this);  }
    public OrderQuoteDao orderQuoteDao() { return new OrderQuoteDao(this);  }
    public ShippingCompanyDao shippingCompanyDao() { return new ShippingCompanyDao(this);  }
    public StateDao stateDao() { return new StateDao(this);  }
    public SupplierDao supplierDao() { return new SupplierDao(this);  }
    

}
